-
Notifications
You must be signed in to change notification settings - Fork 3.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create devcontainer.jsonu #11245
Create devcontainer.jsonu #11245
Conversation
https://github.com/bearycool11/pmll_blockchain/tree/main/.devcontainer here is the dev-container. |
Let's break down and explain the Dockerfile, SDK.json, and the CMake component in your project setup: Dockerfile Base Image: dockerfile dockerfile COPY ./reinstall-cmake.sh /tmp/ RUN if [ "${REINSTALL_CMAKE_VERSION_FROM_SOURCE}" != "none" ]; then dockerfile [Optional] Uncomment this section to install additional vcpkg ports.RUN su vscode -c "${VCPKG_ROOT}/vcpkg install "vcpkg Integration: This part integrates vcpkg, a C++ package manager, allowing installation of dependencies like Boost, OpenSSL, etc. [Optional] Uncomment this section to install additional packages.RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \&& apt-get -y install --no-install-recommendsProvides flexibility to install additional system packages, such as debugging tools or library dependencies. Purpose: Defines project-specific settings for the SDK (e.g., Cosmos SDK, AWS SDK). json SDK.json can be used to automate dependency management within the Docker container. Role in the Dockerfile: Handles project configuration, including detecting dependencies and generating build files. vcpkg integrates seamlessly with CMake to manage external dependencies. Some projects require newer features or bug fixes in specific CMake versions. Sets up a consistent development environment, including optional customizations for CMake and vcpkg. Serves as a blueprint for dependencies and build configurations. Orchestrates the build process, leveraging vcpkg for dependency resolution and SDK.json for project-specific configurations. So that's in a nutshell what's in the devcontainer for the SDK. It automates the SDK so it isn't so manual for everyone. |
🚀 Final Automation Boost for Cosmos SDK 🚀 This PR lays the foundation for a fully automated workflow across Cosmos SDK, setting a new standard for efficiency, reliability, and scalability. Starting with the custom Docker-based dev environment, this setup ensures consistency and ease of use for all contributors. Key Features and Integrations Centralized build system for cross-platform compatibility. Devcontainer.json automates environment setup, ensuring developers can start coding immediately: Fully compatible with GitHub Actions for automated builds and testing: Contributor-friendly onboarding steps: |
again This PR introduces a fully automated development workflow for Cosmos SDK, establishing a new benchmark for efficiency, scalability, and reliability across the ecosystem. By leveraging a custom Docker-based dev environment, this setup ensures seamless consistency for all contributors, regardless of their local configurations. Key Features and Integrations
|
Please review the detailed dev container setup at: 👉 https://github.com/bearycool11/pmll_blockchain/tree/main/.devcontainer This provides fine-granular insights into the Dockerfile, SDK.json, and CMake configurations. Together, they form a cohesive, automated framework for Cosmos SDK development. 🚀 Final Thoughts 🚀 |
📌 Review Request for Dev Container Automation PR Key Highlights Let’s get this merged and set a new standard for blockchain development! 🚀 I have already requested for merge specifically three .zip files that have the different .c/.h modular files that automate and streamline this component. |
We are not planning to add devcontainers yet. |
well, when you do mine works, so you should get to doing it. And I totally understand why you said that. I was debugging my container really hard for a few hours during the CI updates, so I can't blame you for waiting. Overall, I'm noticing my runners are succeeding in the pipeline compilation now with my version of the devcontainer defined as also the root file of my repo., which was what was causing my issues as I run a lot of different C heavy programs.... So yeah... my root is at the very top of the repo and I need to get to working on organizing all my files, but it's working with both Windows and Ubuntu 2025 updates as far as I'm aware on PMLL_blockchain. I can take a look and see if I can do some for work for you all with this later, especially now that we have test running first before official production merge, which has been super helpful for me with catching warning error during workflow. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that's good start. We can make enhance this further in the future. Thank you!
Description
New tool, Bug fixing, or Improvement?
Please include a summary of the change and which issue is fixed. Also include relevant motivation and context.
For new tools, please provide total size and installation time.
Related issue:
Check list